#include "Etg_Almacenamiento.h"
#include "../../../tests/Persona.h"

void Etg_Almacenamiento::ubicar(Compuesto *compuesto, Dato *daux, unsigned int *pos, unsigned int* tam, TipoSerializacion tipoS){
        // no devuelve nada xq tiene q estar sino ya lo rechazo el indice antes!       
       int i,resp=-1;
       Dato *dato; 
       (*pos)=0;
       for(i=0;i<compuesto->getCantidadComponentes()&&(resp!=0);i++){
            ComponenteAlmacenamiento *reg;
       		reg=compuesto->getComponenteAt(i); 
       		
       		//daux->clone(dato); 
       		
       		dato=daux->getNewInstance();
       		
       		reg->leer(dato,tipoS); 
       		resp= dato->compareTo(daux); 
       		if (resp==0) { 
       			(*tam)=dato->getTamanio(tipoS); 
       			*pos= i; 
       			return; 
       			} 
       	}
        // si llega no encontro, devuelvo -1;
       *pos = -1;
        
}
